It is generally known today for wireless communication devices, such as cell phones and wirelessly equipped personal digital assistants (PDAs) and computers to be able to engage in wireless packet-data communications and to thereby wirelessly send and receive messages and other content. A wireless carrier, for instance, may operate a radio access network (RAN) and packet-data serving node (PDSN) that cooperatively establish wireless packet-data connectivity between WCDs served by the carrier and a packet-switched network such as the Internet or a private packet network.
In usual practice, a WCD initiates acquisition of a packet-data connection by sending a packet-data origination message over an air interface access channel to the carrier's RAN. In response, the RAN then assigns an air-interface traffic channel for use by the WCD, and the RAN signals to a packet data serving node (PDSN) or other gateway, which negotiates with the WCD to set up a data link layer connection. In addition, the gateway or a mobile-IP home agent assigns an IP address for use by the WCD to engage in packet-data communications. The WCD may then communicate with other entities on the packet-switched network in much the same way that a traditional personal computer would, except that the WCD would communicate over a wireless air interface and via the RAN.
One difficulty with this kind of arrangement is that it typically precludes pushing of packet-data communications to a WCD, i.e., sending of packet-data to a WCD, without the WCD initially requesting the data. Rather, in order for a WCD to receive packet-data, the WCD must usually first acquire packet-data connectivity and then request the data. For instance, to receive content from a particular URL, the WCD must first acquire packet-data connectivity and then send an HTTP request seeking content from that URL.
One well-accepted way to overcome this limitation is to send a specially-coded data-notification message over an air interface control channel to the WCD, such that the WCD receives the data-notification message without needing to acquire packet-data connectivity. The data-notification message may take the form of an SMS message of the type defined by industry standard protocol published as EIA/TIA IS-637 for instance, carrying a special code that designates it as a data notification message and carrying a URL of a network location where the data to be delivered is stored. Upon receipt of such a data-notification message (and detection that it is such a message), the WCD may then automatically acquire data connectivity and send an HTTP request to obtain the data from the designated URL.
Systems that deliver data in this manner go by various names, such as “WAP Push” and, more recently, “Multimedia Messaging Service” (MMS) (which actually uses WAP Push technology). MMS messaging, for instance, is commonly used to send media such as digital images or video clips to a WCD.
To send an MMS message to a WCD, for instance, a message-sender delivers to special MMS server known as an MMS Center or MMS Controller (“MMSC”) an MMS message file that contains an MMS header typically followed by a multipart binary MIME message defining the content. The server then stores the MMS message and transmits a subset of the MMS header as an MMS notification message (MMS message type “m-notification-ind”) via SMS to the WCD together with a URL pointer to a location of the complete message on the MMS server. Upon receipt of the MMS notification message, and possibly upon receipt of user approval, program logic on the WCD would then automatically send an HTTP request to download the message from the designated URL.
In some instances, it may be necessary to transmit an MMS message between MMS systems, such as between an MMS system operated by one carrier and an MMS system operated by another carrier. This may occur when a party served by one carrier desires to send an MMS message to a party served by the other carrier, for instance. To transmit an MMS message between systems, an MMSC serving the sending party may receive an MMS message from the sending party and may then send the MMS message via a network to an MMSC serving the destination party. The MMSC serving the destination party may then store the message content and generate and send an MMS notification message to the destination party, and the destination party may responsively retrieve the stored message content.